home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / PInterfaces / NuBus.p < prev    next >
Text File  |  1996-05-01  |  2KB  |  118 lines

  1. {
  2.      File:        NuBus.p
  3.  
  4.      Contains:    NuBus I/O Interfaces 
  5.  
  6.      Version:    Technology:    xxx Put version info here xxx
  7.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  8.  
  9.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10.  
  11.      Bugs?:        If you find a problem with this file, send the file and version
  12.                  information (from above) and the problem description to:
  13.  
  14.                      Internet:    apple.bugs@applelink.apple.com
  15.                      AppleLink:    APPLE.BUGS
  16.  
  17. }
  18. {$IFC UNDEFINED UsingIncludes}
  19. {$SETC UsingIncludes := 0}
  20. {$ENDC}
  21.  
  22. {$IFC NOT UsingIncludes}
  23.  UNIT NuBus;
  24.  INTERFACE
  25. {$ENDC}
  26.  
  27. {$IFC UNDEFINED __NUBUS__}
  28. {$SETC __NUBUS__ := 1}
  29.  
  30. {$I+}
  31. {$SETC NuBusIncludes := UsingIncludes}
  32. {$SETC UsingIncludes := 1}
  33.  
  34. {$IFC UNDEFINED __TYPES__}
  35. {$I Types.p}
  36. {$ENDC}
  37. {$IFC UNDEFINED __SLOTS__}
  38. {$I Slots.p}
  39. {$ENDC}
  40.  
  41. {$PUSH}
  42. {$ALIGN MAC68K}
  43. {$LibExport+}
  44.  
  45. {$IFC FOR_SYSTEM8_PREEMPTIVE }
  46. {
  47.  *
  48.  * kSpaceCode -
  49.  *
  50.  * Bitfield definitions for the "reg" and "assigned-adderesses"
  51.  * properties found in the device portion of the NameRegistry
  52.  *
  53. }
  54.  
  55. CONST
  56.     kSpaceCodeMask                = $03000000;
  57.     kSpaceCodeMem64                = $03000000;
  58.     kSpaceCodeMem32                = $02000000;
  59.     kSpaceCodeIO                = $01000000;
  60.     kSpaceCodeConfig            = $00000000;
  61.     kDeviceCodeMask                = $000000FF;
  62.  
  63.  
  64. TYPE
  65.     EncodeInt                            = UInt32;
  66.     EncodePhysPtr = ^EncodePhys;
  67.     EncodePhys = RECORD
  68.         hi:                        EncodeInt;
  69.         mid:                    EncodeInt;
  70.         lo:                        EncodeInt;
  71.     END;
  72.  
  73.     EncodeSizePtr = ^EncodeSize;
  74.     EncodeSize = RECORD
  75.         hi:                        EncodeInt;
  76.         lo:                        EncodeInt;
  77.     END;
  78.  
  79. {
  80.  * PropertyReg & PropertyAssignedAddresses -
  81.  *
  82.  * The struct format definitions for the "reg" and
  83.  * "assigned-addresses" NameRegistry properties.
  84.  *
  85. }
  86.     PropertyRegPtr = ^PropertyReg;
  87.     PropertyReg = RECORD
  88.         phys:                    EncodePhys;
  89.         size:                    EncodeSize;
  90.     END;
  91.  
  92.     MotherboardRegPtr = ^MotherboardReg;
  93.     MotherboardReg = RECORD
  94.         base:                    EncodeInt;
  95.         length:                    EncodeInt;
  96.     END;
  97.  
  98. {
  99.  * Family service category and name declarations
  100.  * (that's it for now)
  101.  *
  102. }
  103.  
  104. CONST
  105.     kServiceCategoryNuBus        = 'nbus';
  106.  
  107. {$ENDC}
  108. {$ALIGN RESET}
  109. {$POP}
  110.  
  111. {$SETC UsingIncludes := NuBusIncludes}
  112.  
  113. {$ENDC} {__NUBUS__}
  114.  
  115. {$IFC NOT UsingIncludes}
  116.  END.
  117. {$ENDC}
  118.